The present invention relates to a storage system having a snapshot function of volume image in a computer system using storage, and in particular, to a technique which utilizes a differential volume which stores snapshots as a preceding copy area.
In the information-oriented society, one of the important roles of a storage system which stores information is data protection. The most typical method for data protection is backup, whereby data on the storage are preserved on a backup medium such as tape. Even if data on the storage under operation should be lost by a failure, a trouble, or an operation mistake, it is possible to recover data obtained at the time of preservation by restoring the backup and damage can be kept to a minimum.
However, as capacities of storages are increased, time required for backup is becoming a problem. Further, in application where the update frequency of data is high, even if backup is taken once the difference from the backup expands soon and damage would be greater in case of emergency, therefore it has become necessary to take the backup frequently. Furthermore, by way of precaution against file loss caused by an operation mistake and against a desire to compare contents of a file with the past state, there is a demand for capability of easy reference to periodic backup.
As a function that meets such application, a snapshot function is attracting attention. The snapshot function is a function of maintaining a point-in-time data image on a storage under operation when a snapshot is taken and making the point-in-time data image accessible by using means different from the storage under operation. The snapshot minimizes backup time, which posed a problem in tape backup, by making data usable at the time of taking without waiting completion of copying the whole data on the storage.
A method of using a preservation storage area for preserving data obtained at the time of snapshot in order to maintain the snapshot is described in U.S. Pat. No. 5,649,152.
According to this method, if a snapshot of an operational volume is taken then at the time of update of a block that occurs thereafter and that is not yet updated, old data of the block is copied to the preservation storage area and a virtual volume for providing the snapshot is generated. As for reading from the virtual volume, if a block associated with an address to be read out has been already copied to the preservation storage area, the block is returned. If the copy is not present in the preservation storage area, then an alteration has not occurred in the operational volume, and consequently a block associated with the same address in the operational volume is returned.
According to this technique, compared to the case where the whole data on the operational volume is preserved in another volume at the time of snapshot taking, it is possible to maintain image of the operational volume at the time of snapshot taking with less storage capacity.